/*******************************************************************************
 * 名称： 66. 加一
 * 地址： https://leetcode.cn/problems/plus-one/description/
 ******************************************************************************/

/**
 * @param {number[]} digits
 * @return {number[]}
 */
var plusOne = function (digits) {
  return count(digits, digits.length - 1, 1);

  function count(digits, index, addVal = 1) {
    if (index < 0) {
      return [addVal, ...digits];
    }

    if (digits[index] + addVal < 10) {
      digits[index] += addVal;
      return digits;
    } else {
      digits[index] = 0;
      return count(digits, index - 1, 1);
    }
  }
};

module.exports = {
  name: '66. 加一',
  testFc: plusOne,
};
